package com.ygqh.baby.mapper;

import com.ygqh.baby.ao.CodeType;
import com.ygqh.baby.ao.QueryInfo;
import com.ygqh.baby.po.YgRechargeMemberRecord;
import com.ygqh.baby.po.YgRechargeMemberRecordExample;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface YgRechargeMemberRecordMapper {
	int countByExample(YgRechargeMemberRecordExample example);

	int deleteByExample(YgRechargeMemberRecordExample example);

	int deleteByPrimaryKey(Long id);

	int insert(YgRechargeMemberRecord record);

	int insertSelective(YgRechargeMemberRecord record);

	List<YgRechargeMemberRecord> selectByExample(YgRechargeMemberRecordExample example);

	YgRechargeMemberRecord selectByPrimaryKey(Long id);

	int updateByExampleSelective(@Param("record") YgRechargeMemberRecord record,
			@Param("example") YgRechargeMemberRecordExample example);

	int updateByExample(@Param("record") YgRechargeMemberRecord record,
			@Param("example") YgRechargeMemberRecordExample example);

	int updateByPrimaryKeySelective(YgRechargeMemberRecord record);

	int updateByPrimaryKey(YgRechargeMemberRecord record);

	int countSuper(@Param("q") String q, @Param("nickName") String nickName,
				   @Param("rechargeRecordType") CodeType rechargeRecordType);

	List<YgRechargeMemberRecord> selectSuper(@Param("queryInfo") QueryInfo queryInfo, @Param("q") String q,
											 @Param("nickName") String nickName,
											 @Param("rechargeRecordType") CodeType rechargeRecordType);

	List<YgRechargeMemberRecord> selectCountVip(@Param("queryInfo") QueryInfo queryInfo,
												@Param("rechargeRecordType") CodeType rechargeRecordType);

	int countVip(@Param("rechargeRecordType") CodeType rechargeRecordType);

}
